NeighborMom() vs AnyMom()

The way a mother is chosen after death has impacts on the result of the simulation. Below are two methods for selecting that individual to reproduce: weighted sampling by fitness of all individuals (anyMom), or weighted sampling by fitness of only individuals adjacent to the dead one (neighborMom).

Both NeighborMom() and AnyMom() serve as different methods replacing FindMom() based on our method of selecting parents. NeighborMom() only compares fitnesses of neighboring individuals, while AnyMom() looks at fitnesses of all individuals in the population. Locations do not need to be separately updated for NeighborMom(), as each individual is automatically adjacent to a parent.

Old heatmap for Iterating by Ben/CL

High Strength of Selection, AnyMom(), no Distance-based inheritance

The following two runs were created before distance inheritance was implemented, so do not have the mean connection distance and have to use an older hmap() function.

Figure 1 High strength of selection with the mother selected from any individual, pnd and prd not evolving separately. The results above were created with: C=0.5, D=0.0, gen=100000, pn=0.5, distInherit=false, pnd=false, pr=0.0001, prd=false, muP=0.01, delta=0.5, sigmapn=0.01, sigmapr=0.01, reps=10. Initial cooperation frequency was 0.5.

Figure 2 High strength of selection with the mother selected from any individual, pnd but not prd evolving separately. The results above were created with: C=0.5, D=0.0, gen=100000, dbOrder=deathbirth, distInherit=false, findMom=anyMom, pn=0.5, pnd=true, pr=0.0001, prd=false, muP=0.01, delta=0.5, sigmapn=0.01, sigmapr=0.01, reps=50. Initial cooperation frequency was 0.5.

New Heatmap Function

High Strength of Selection, NeighborMom(), no Distance-based inheritance

Figure 3 High strength of selection with the mother selected from dead individuals' neighbors, pnd and prd not evolving separately. The results above were created with: C=0.5, D=0.0, gen=100000, distInherit=false, distFactor=1.0, pn=0.5, findMom=neighborMom, pnd=false, pr=0.0001, prd=false, muP=0.01, delta=0.5, sigmapn=0.01, sigmapr=0.01, reps=10). Initial cooperation frequency was 0.5 .

Figure 4 High strength of selection with the mother selected from dead individuals' neighbors, pnd but not prd evolving separately. The results above were created with: C=0.5, D=0.0, gen=100000, distInherit=false, distFactor=1.0, pn=0.5, findMom=neighborMom, pnd=true, pr=0.0001, prd=false, muP=0.01, delta=0.5, sigmapn=0.01, sigmapr=0.01, reps=10. Initial cooperation frequency was 0.5 .

Difference Between NeighborMom and anyMom

Heatmap for neighborMom - anyMom

Figure 5 Difference between Figure 3 and Figure 1 (parents selected from neighbors versus entire population, PND not evolving separately from PNC)

Figure 6 Difference between Figure 4 and Figure 2 (parents selected from neighbors versus entire population, PND evolving separately from PNC)

NeighborRange

The following introduces a new parameter, neighborRange, and modifies neighborMom() as below to allow for an input range to control how many individuals are possible to be selected for the mother.

Heatmap for iterating by cl/neighborRange (1-50)

Low benefit

Figure 7 High strength of selection with the mother selected from individuals a distance neighborRange or below from, neither pnd nor prd evolving separately. The results above were created with: B=2.0, C=0.5, D=0.0, gen=100000, dbOrder=deathbirth, distInherit=false, distFactor=1.0, findMom=neighborMom, pn=0.5, pnd=false, pr=0.0001, prd=false, muP=0.01, delta=0.5, sigmapn=0.01, sigmapr=0.01, reps=10. Initial cooperation frequency was 0.5.

The exact values of the y-axis are: 1 4 6 9 11 14 16 19 21 24 27 29 32 34 37 39 42 44 47 50

Figure 8 High strength of selection with the mother selected from individuals a distance neighborRange or below from, pnd but not prd evolving separately. The results above were created with: B=2.0, C=0.5, D=0.0, gen=100000, distInherit=false, distFactor=1.0, findMom=neighborMom, pn=0.5, pnd=true, pr=0.0001, prd=false, muP=0.01, delta=0.5, sigmapn=0.01, sigmapr=0.01, reps=50. Initial cooperation frequency was 0.5.

The exact values of the y-axis are: 1 4 6 9 11 14 16 19 21 24 27 29 32 34 37 39 42 44 47 50

Finding the difference from both runs with anyMom() and neighborRange from 1-50. New heatmap below.

High benefit

Figure 9 High strength of selection with the mother selected from individuals a distance neighborRange or below from, with neither pnd nor prd evolving separately. The results above were created with: B=9.0, C=0.5, D=0.0, gen=100000, dbOrder=deathbirth, distInherit=false, distFactor=1.0, findMom=neighborMom, pn=0.5, pnd=false, pr=0.0001, prd=false, muP=0.01, delta=0.5, sigmapn=0.01, sigmapr=0.01, reps=50. Initial cooperation frequency was 0.5 Initial cooperation frequency was 0.5

The exact values of the y-axis are: 1 4 6 9 11 14 16 19 21 24 27 29 32 34 37 39 42 44 47 50

Figure 10 High strength of selection with the mother selected from individuals a distance neighborRange or below from, pnd but not prd evolving separately. The results above were created with: B=9.0, C=0.5, D=0.0, gen=100000, dbOrder=deathbirth, distInherit=false, distFactor=1.0, findMom=neighborMom, pn=0.5, pnd=true, pr=0.0001, prd=false, muP=0.01, delta=0.5, sigmapn=0.01, sigmapr=0.01, reps=50. Initial cooperation frequency was 0.5

The exact values of the y-axis are: 1 4 6 9 11 14 16 19 21 24 27 29 32 34 37 39 42 44 47 50

NeighborRange Differences

Heatmap for the difference between NeighborRange plots and runs with anyMom

Low Benefit

Figure 11 Difference between Figure 7 (with neighborRange) and Figure 1 (anyMom), both without PND evolving separately and benefit=2.0

Figure 12 Difference between Figure 8 (with neighborRange) and Figure 2 (anyMom), both with PND evolving separately and benefit=2.0

High Benefit Differences

Figure 13 Difference between Figure 9 (with neighborRange) and Figure 1 (anyMom), both without PND evolving separately and benefit=9.0

Figure 14 Difference between Figure 10 (with neighborRange) and Figure 2 (anyMom), both without PND evolving separately and benefit=9.0

Distance-Based Inheritance

The next section involves physical distance having an impact on forming connections. As distance increases, individuals are exponentially less likely to be connected to by a newborn.

Probability to connect = distFactor^n * P(N/R)(C/D), where n is the shortest distance along a torus between individuals

Heatmap for iterating by distFactor/cl

Low Benefit

Figure 15 High strength of selection with the probability of forming connections, with neither pnd nor prd evolving separately, and at low benefit. The results above were created with: B=2.0, C=0.5, D=0.0, gen=100000, dbOrder=deathbirth, distInherit=true, findMom=neighborMom, pn=0.5, pnd=true, pr=0.0001, prd=false, muP=0.01, delta=0.5, sigmapn=0.01, sigmapr=0.01, reps=50. Initial cooperation frequency was 0.5.

Figure 16 High strength of selection with the probability of forming connections, pnd but not prd evolving separately, and at low benefit. The results above were created with: B=2.0, C=0.5, D=0.0, gen=100000, dbOrder=deathbirth, distInherit=true, findMom=neighborMom, pn=0.5, pnd=true, pr=0.0001, prd=false, muP=0.01, delta=0.5, sigmapn=0.01, sigmapr=0.01, reps=50. Initial cooperation frequency was 0.5.

High Benefit

Figure 17 High strength of selection with the probability of forming connections, with neither pnd nor prd evolving separately, and at high benefit. The results above were created with: B=9.0, C=0.5, D=0.0, gen=100000, dbOrder=deathbirth, distInherit=true, findMom=neighborMom, pn=0.5, pnd=true, pr=0.0001, prd=false, muP=0.01, delta=0.5, sigmapn=0.01, sigmapr=0.01, reps=50. Initial cooperation frequency was 0.5.

Figure 18 High strength of selection with the probability of forming connections, pnd but not prd evolving separately, and at high benefit. The results above were created with: B=9.0, C=0.5, D=0.0, gen=100000, dbOrder=deathbirth, distInherit=true, findMom=neighborMom, pn=0.5, pnd=true, pr=0.0001, prd=false, muP=0.01, delta=0.5, sigmapn=0.01, sigmapr=0.01, reps=50. Initial cooperation frequency was 0.5

Differences From Distance-based Inheritance

Difference heatmap for iterating by distFactor/cl

Figure 19 Difference between Figure 15 (with distFactor) and Figure 3 (neighborMom), both without PND evolving separately and benefit=2.0

Figure 20 Difference between Figure 16 (with distFactor) and Figure 4 (neighborMom),, both with PND evolving separately from PNC and benefit=2.0

Figure 21 Difference between Figure 17 (with distFactor) and Figure 3 (neighborMom), both without PND evolving separately and benefit=2.0

Figure 22 Difference between Figure 18 (with distFactor) and Figure 4 (neighborMom), both with PND evolving separately from PNC and benefit=9.0

Stabilization Testing

The following were testing iterating by number of generations (50000, 75000, 100000, 150000, 250000) and cl, to see when cooperation frequency stabilizes.

Heatmap for Iterating by Gen/CL

Supplementary Figure 1 High strength of selection with the mother selected from any individuals, pnd but not prd evolving separately. The results above were created with: B=2.0, C=0.5, D=0.0, CL=pard["cl"], gen=Int(pard["ben"]), findMom=anyMom, distInherit=false, distFactor=0.975, pn=0.5, pnd=true, pr=0.0001, prd=false, muP=0.01, delta=0.5, sigmapn=0.01, sigmapr=0.01, reps=10. Initial cooperation frequency was 0.5

Supplementary Figure 2 High strength of selection with the mother selected from dead individuals' neighbors, pnd but not prd evolving separately. The results above were created with: B=2.0, C=0.5, D=0.0, CL=pard["cl"], gen=pard["ben"], findMom=neighborMom, distInherit=false, distFactor=0.975, pn=0.5, pnd=true, pr=0.0001, prd=false, muP=0.01, delta=0.5, sigmapn=0.01, sigmapr=0.01, reps=10. Initial cooperation frequency was 0.5 .

PRD Evolving Separately

While using anyMom and high strength of selection (conditions similar to Figures 1-2)

Heatmap for anyMom

Supplemental Figure 3 High strength of selection with the mother selected from any individual, pnd and prd evolving separately. The results above were created with: C=0.5, D=0.0, gen=100000, dbOrder=deathbirth, distInherit=false, distFactor=1.0, findMom=anyMom, pn=0.5, pnd=false, pr=0.0001, prd=false, muP=0.01, delta=0.5, sigmapn=0.01, sigmapr=0.01, reps=50. Initial cooperation frequency was 0.5. Initial cooperation frequency was 0.5.

1 dies, 10 selected as parent (with neighborRange=10) 95 dies, 10 can't be selected as parent but 1 can distInheritance resolve location - baby was set next to parent

Distance Between Individuals

Graphs of the mean distance between individuals along a torus, from selected runs above.

Supplemental Figure 4 Mean distance of connections and degree for runs using anyMom and neighborMom. All other inputs were controlled at C=0.5, D=0.0, gen=100000, dbOrder=deathbirth, distInherit=false, pn=0.5, pnd=true, pr=0.0001, prd=false, muP=0.01, delta=0.5, sigmapn=0.01, sigmapr=0.01, reps=10. Initial cooperation frequency was 0.5.

Heatmap for Difference of Ben/CL

Supplemental Figure 5 Difference between a run with neighborRange=50 and anyMom, with PND evolving separately. Constant inputs were C=0.5, D=0.0, gen=100000, pn=0.5, distInherit=false, pnd=true, pr=0.0001, prd=false, muP=0.01, delta=0.5, sigmapn=0.01, sigmapr=0.01, reps=50